home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
COMAL
/
Z-Misc Series
/
(k)zh.d64
/
src.irq0
< prev
next >
Wrap
Text File
|
2007-03-01
|
1KB
|
127 lines
;
;--------------------------------;
; ;
; SRC.IRQ0 - A COMAL MODULE ;
; PRERELEASE ;
; ;
; DUTCH COMAL USERS GROUP ;
; ;
; 860325 ;
; ;
;--------------------------------;
; ;
.OPT NOLIST, ERRORS
.LIB SYMBOLS
;
*=$7F00
;
.BYTE C64
.WORD END
.WORD SIGNAL
;
.BYTE 3,'IRQ'
.WORD PROCS,INIT
.BYTE 0
;
PROCS
.BYTE 9,'COUNTDOWN'
.WORD PCCNT
.BYTE 8,'GETCOUNT'
.WORD PCGCNT
.BYTE 5,'GOIRQ'
.WORD PCGO
.BYTE 0
;
PCCNT
.BYTE PROC
.WORD MCCNT
.BYTE 1
.BYTE INT+VALUE
.BYTE ENDPRC
;
PCGCNT
.BYTE FUNC+INT
.WORD MCGCNT
.BYTE 0
.BYTE ENDFNC
;
PCGO
.BYTE PROC
.WORD MCGO
.BYTE 0
.BYTE ENDPRC
;
SIGNAL
SEI
CPY #LINK
BNE NXT1
LDX CINV
LDA CINV+1
STX OLD
STA OLD+1
NXT1
CPY #DSCRD
BNE NXT2
LDX OLD
LDA OLD+1
STX CINV
STA CINV+1
NXT2
CLI
RTS
;
INIT
SEI
LDX #<IRQ
LDA #>IRQ
STX CINV
STA CINV+1
LDA EXCINF
ORA #$20
STA EXCINF
CLI
RTS
;
MCCNT
LDA #1
JSR FNDPAR
LDY #0
LDA (COPY1),Y
STA CNT
INY
LDA (COPY1),Y
STA CNT+1
RTS
;
MCGCNT
LDA CNT
LDY CNT+1
JSR INTFP
JMP PUSHA1
;
MCGO
LDA EXCINF
ORA #$04
STA EXCINF
RTS
;
IRQ
LDA CNT
BMI SKIP1
DEC CNT+1
LDA CNT+1
CMP #255
BNE SKIP1
DEC CNT
BPL SKIP1
LDA EXCINF
ORA #$04
STA EXCINF
SKIP1
JMP (OLD)
;
OLD *=*+2
CNT *=*+2
;
END .END